home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 2
/
Merciful - Disc 2.iso
/
software
/
m
/
muiv3.1cracked.lha
/
MUI
/
Developer
/
Modula
/
txt
/
MuiMacros.mod
< prev
next >
Wrap
Text File
|
1995-11-18
|
45KB
|
1,372 lines
IMPLEMENTATION MODULE MuiMacros;
(*$ NilChk := FALSE EntryClear := FALSE LargeVars := FALSE StackParms := FALSE *)
(*$ DEFINE Locale := TRUE *)
(*$ DEFINE MUIOBSOLETE := FALSE *)
(*$ DEFINE MUI3 := TRUE *)
(****************************************************************************
**
** $VER: MuiMacros.mod 3.1 (18.11.95)
**
** The following updates have been done by
**
** Olaf "Olf" Peters <olf@informatik.uni-bremen.de>
**
** $HISTORY:
**
** 18.11.95 3.1 : updated for MUI v3.1 release
** 17.9.95 2.3 : updated to MUI v2.3
**
****************************************************************************)
(****************************************************************************
**
** MUI Macros 2.0
**
** Converted to Modula by Christian "Kochtopf" Scholz
**
** $Id: MuiMacros.mod 1.3 1995/11/18 16:46:18 olf Exp olf $
**
** $Log: MuiMacros.mod $
* Revision 1.3 1995/11/18 16:46:18 olf
* MUI Release 3.1
*
* Revision 1.2 1995/10/23 17:06:34 olf
* *** empty log message ***
*
* Revision 1.1 1995/09/25 15:32:52 olf
* Initial revision
*
# Revision 1.8 1994/08/18 18:59:25 Kochtopf
# changed img-argument in PopButton from ARRAY to APTR.
# changed implementation of SimpleButton for -MUIOBSOLETE
#
# Revision 1.7 1994/08/11 16:59:45 Kochtopf
# *** empty log message ***
#
# Revision 1.6 1994/06/27 22:06:41 Kochtopf
# put some Macros in MUIOBSOLETE-Parenthesis, because one should
# now use mMakeObj.
#
# Revision 1.5 1994/02/15 21:14:05 Kochtopf
# neue Macros fuer Pop* und Register definiert,
# HCenter und VCenter neu
# PopUp entfernt und durch PopButton ersetzt.
# neue Label-Macros LLabel eingefuehrt (aus mui.h)
#
# Revision 1.4 1994/02/09 14:50:03 Kochtopf
# Versionsnummer in 2.0 geaendert.
#
**
****************************************************************************)
IMPORT MD:MuiD;
IMPORT ML:MuiL;
IMPORT UD:UtilityD;
IMPORT R;
FROM MuiSupport IMPORT DoMethod;
FROM UtilityD IMPORT tagEnd, tagMore, HookPtr, Hook;
FROM SYSTEM IMPORT ADDRESS, ADR, TAG, CAST, SETREG, REG;
FROM IntuitionL IMPORT SetAttrsA, GetAttr;
FROM IntuitionD IMPORT omGET, omADDMEMBER, omREMMEMBER;
FROM Storage IMPORT ALLOCATE;
VAR buffer : ARRAY [0..50] OF LONGINT; (* for the tags *)
(*/// "MUI-Object-Generation" *)
(*
**
** MUI - Object Generation
**
*)
PROCEDURE WindowObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcWindow), tags);
END WindowObject;
PROCEDURE ImageObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcImage), tags);
END ImageObject;
PROCEDURE ApplicationObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcApplication), tags);
END ApplicationObject;
PROCEDURE NotifyObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcNotify), tags);
END NotifyObject;
PROCEDURE TextObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcText), tags);
END TextObject;
PROCEDURE RectangleObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcRectangle), tags);
END RectangleObject;
PROCEDURE ListObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcList), tags);
END ListObject;
PROCEDURE PropObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcProp), tags);
END PropObject;
PROCEDURE StringObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcString), tags);
END StringObject;
PROCEDURE ScrollbarObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcScrollbar), tags);
END ScrollbarObject;
PROCEDURE ListviewObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcListview), tags);
END ListviewObject;
PROCEDURE RadioObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcRadio), tags);
END RadioObject;
PROCEDURE VolumelistObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVolumelist), tags);
END VolumelistObject;
PROCEDURE FloattextObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcFloattext), tags);
END FloattextObject;
PROCEDURE DirlistObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcDirlist), tags);
END DirlistObject;
PROCEDURE ScrmodelistObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcScrmodelist), tags);
END ScrmodelistObject;
PROCEDURE SliderObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcSlider), tags);
END SliderObject;
PROCEDURE CycleObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcCycle), tags);
END CycleObject;
PROCEDURE GaugeObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGauge), tags);
END GaugeObject;
PROCEDURE BoopsiObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcBoopsi), tags);
END BoopsiObject;
PROCEDURE ScaleObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcScale), tags);
END ScaleObject;
PROCEDURE GroupObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup), tags);
END GroupObject;
PROCEDURE VGroup(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup), tags);
END VGroup;
PROCEDURE HGroup(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup), TAG(buffer, MD.maGroupHoriz, TRUE, tagMore, tags, tagEnd));
END HGroup;
PROCEDURE ColGroup(cols : LONGCARD; tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup), TAG(buffer, MD.maGroupColumns, cols, tagMore, tags, tagEnd));
END ColGroup;
PROCEDURE RowGroup(rows : LONGCARD; tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup), TAG(buffer, MD.maGroupRows, rows, tagMore, tags, tagEnd));
END RowGroup;
PROCEDURE PageGroup(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcGroup),TAG(buffer, MD.maGroupPageMode, TRUE, tagMore, tags, tagEnd));
END PageGroup;
PROCEDURE ColorfieldObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcColorfield), tags);
END ColorfieldObject;
PROCEDURE ColoradjustObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcColoradjust), tags);
END ColoradjustObject;
PROCEDURE PaletteObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPalette), tags);
END PaletteObject;
PROCEDURE VirtgroupObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup), tags);
END VirtgroupObject;
PROCEDURE ScrollgroupObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcScrollgroup), tags);
END ScrollgroupObject;
PROCEDURE VGroupV(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup), tags);
END VGroupV;
PROCEDURE HGroupV(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup), TAG(buffer, MD.maGroupHoriz, TRUE, tagMore, tags, tagEnd));
END HGroupV;
PROCEDURE ColGroupV(cols : LONGCARD; tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup), TAG(buffer, MD.maGroupColumns, cols, tagMore, tags, tagEnd));
END ColGroupV;
PROCEDURE RowGroupV(rows : LONGCARD; tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup), TAG(buffer, MD.maGroupRows, rows, tagMore, tags, tagEnd));
END RowGroupV;
PROCEDURE PageGroupV(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcVirtgroup),TAG(buffer, MD.maGroupPageMode, TRUE, tagMore, tags, tagEnd));
END PageGroupV;
PROCEDURE PopString(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPopstring), tags);
END PopString;
PROCEDURE PopObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPopobject), tags);
END PopObject;
PROCEDURE PopAsl(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPopasl), tags);
END PopAsl;
(*$ IF MUI3 *)
PROCEDURE PoppenObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPoppen), tags);
END PoppenObject ;
(*$ ENDIF *)
PROCEDURE Register(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcRegister), tags);
END Register;
PROCEDURE MenuStripObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcMenustrip), tags);
END MenuStripObject;
PROCEDURE MenuObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcMenu), tags);
END MenuObject;
(*$ IF Locale *)
PROCEDURE MenuObjectT(name : StrPtr; tags : UD.TagItemPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE MenuObjectT(name : ARRAY OF CHAR; tags : UD.TagItemPtr) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.mNewObject(ADR(MD.mcMenu), TAG(buffer, MD.maMenuTitle, name, tagMore, tags, tagEnd));
(*$ ELSE *)
RETURN ML.mNewObject(ADR(MD.mcMenu), TAG(buffer, MD.maMenuTitle, ADR(name), tagMore, tags, tagEnd));
(*$ ENDIF *)
END MenuObjectT;
PROCEDURE MenuItemObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcMenuitem), tags);
END MenuItemObject;
(*$ IF MUI3 *)
PROCEDURE AboutmuiObject(tags : UD.TagItemPtr) : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcAboutmui), tags);
END AboutmuiObject;
PROCEDURE BalanceObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcBalance), tags);
END BalanceObject;
PROCEDURE KnobObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcKnob), tags);
END KnobObject;
PROCEDURE LevelmeterObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcLevelmeter), tags);
END LevelmeterObject;
PROCEDURE NumericbuttonObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcNumericbutton), tags);
END NumericbuttonObject;
PROCEDURE NumericObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcNumeric), tags);
END NumericObject;
PROCEDURE PenadjustObject(tags : UD.TagItemPtr) : APTR ;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcPenadjust), tags);
END PenadjustObject;
(*$ ENDIF *)
(*\\\*)
(*/// "MakeID" *)
(*
** MakeID
** Generate an ID out of a 4-char-string.
** Use it the as WindowID ! (look in MuiTest for an example!)
*)
PROCEDURE MakeID (name : ShortString): LONGINT;
BEGIN
RETURN ORD(name[0])+
ORD(name[1])*256+
ORD(name[2])*65536+
ORD(name[3])*16777216;
END MakeID;
(*\\\*)
(*/// "Hook-Support" *)
(*
** Hook-Support functions
** 1. the dispatcher
** 2. the MakeHook-Function
**
*)
PROCEDURE HookEntry(hook{R.A0} : HookPtr;
object{R.A2}: ADDRESS;
args{R.A1} : ADDRESS) : ADDRESS;
(*$SaveA4:=TRUE*)
BEGIN
SETREG (R.A4, hook^.data);
RETURN CAST(HookDef,hook^.subEntry)(hook, object, args);
END HookEntry;
PROCEDURE MakeHook(entry:HookDef; VAR hook : HookPtr);
BEGIN
ALLOCATE(hook,SIZE(Hook));
hook^.node.succ := NIL;
hook^.node.pred := NIL;
hook^.entry := HookEntry;
hook^.subEntry := CAST(ADDRESS,entry);
hook^.data := REG(R.A4);
END MakeHook;
(*\\\*)
(*/// "Spacing-Macros" *)
(*
**
** Spacing Macros
**
*)
(*/// "HV-Space" *)
PROCEDURE HVSpace() : APTR;
BEGIN
RETURN ML.mNewObject(ADR(MD.mcRectangle), NIL);
END HVSpace;
(*\\\*)
(*/// "Hspace" *)
PROCEDURE HSpace(x : LONGCARD) : APTR;
BEGIN
IF x#0 THEN
RETURN ML.mNewObject(ADR(MD.mcRectangle),
TAG(buffer,
MD.maFixWidth, x,
MD.maVertWeight, 0,
tagEnd));
ELSE
RETURN ML.mNewObject(ADR(MD.mcRectangle),
TAG(buffer,
MD.maVertWeight, 0,
tagEnd));
END;
END HSpace;
(*\\\*)
(*/// "VSpace" *)
PROCEDURE VSpace(x : LONGCARD) : APTR;
BEGIN
IF x#0 THEN
RETURN ML.mNewObject(ADR(MD.mcRectangle),
TAG(buffer,
MD.maFixHeight, x,
MD.maHorizWeight, 0,
tagEnd));
ELSE
RETURN ML.mNewObject(ADR(MD.mcRectangle),
TAG(buffer,
MD.maHorizWeight, 0,
tagEnd));
END;
END VSpace;
(*\\\*)
(*/// "HCenter" *)
PROCEDURE HCenter(obj : APTR) : APTR;
BEGIN
RETURN HGroup(TAG(buffer,
MD.maGroupSpacing, 0,
Child, HSpace(0),
Child, obj,
Child, HSpace(0),
tagEnd));
END HCenter;
(*\\\*)
(*/// "VCenter" *)
PROCEDURE VCenter(obj : APTR) : APTR;
BEGIN
RETURN VGroup(TAG(buffer,
MD.maGroupSpacing, 0,
Child, VSpace(0),
Child, obj,
Child, VSpace(0),
tagEnd));
END VCenter;
(*\\\*)
(*\\\*)
(*/// "PopButton" *)
(*
**
** PopUp-Button
**
** to be used for Popup-Objects
**
*)
PROCEDURE PopButton(img : APTR) : APTR;
BEGIN
RETURN ML.MakeObject(MD.moPopButton, TAG(buffer, img));
END PopButton;
(*\\\*)
(*$ IF MUIOBSOLETE *)
(*
**
** String-Object
**
** Makes a simple String-Gadget
**
*)
(*/// "StringObjects" *)
(*$ IF Locale *)
PROCEDURE String(contents : StrPtr; maxlen : LONGINT) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE String(contents : ARRAY OF CHAR; maxlen : LONGINT) : APTR;
(*$ ENDIF *)
BEGIN
RETURN StringObject(TAG(buffer,
MD.maFrame, MD.mvFrameString,
MD.maStringMaxLen, maxlen,
(*$ IF Locale *)
MD.maStringContents, contents,
(*$ ELSE *)
MD.maStringContents, ADR(contents),
(*$ ENDIF *)
tagEnd));
END String;
(*$ IF Locale *)
PROCEDURE KeyString(contents : StrPtr; maxlen : LONGINT; key : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyString(contents : ARRAY OF CHAR; maxlen : LONGINT; key : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
RETURN StringObject(TAG(buffer,
MD.maFrame, MD.mvFrameString,
MD.maStringMaxLen, maxlen,
(*$ IF Locale *)
MD.maStringContents, contents,
(*$ ELSE *)
MD.maStringContents, ADR(contents),
(*$ ENDIF *)
MD.maControlChar, key,
tagEnd));
END KeyString;
(*\\\*)
(*
**
** Checkmark
**
*)
(*/// "Checkmarks" *)
PROCEDURE Checkmark(selected : BOOLEAN) : APTR;
BEGIN
RETURN ImageObject( TAG(buffer,
MD.maFrame, MD.mvFrameImageButton,
MD.maInputMode, MD.mvInputModeToggle,
MD.maImageSpec, MD.miCheckMark,
MD.maImageFreeVert, TRUE,
MD.maSelected, selected,
MD.maBackground, MD.miButtonBack,
MD.maShowSelState, FALSE,
tagEnd));
END Checkmark;
PROCEDURE KeyCheckmark(selected : BOOLEAN; key : CHAR) : APTR;
BEGIN
RETURN ImageObject( TAG(buffer,
MD.maFrame, MD.mvFrameImageButton,
MD.maInputMode, MD.mvInputModeToggle,
MD.maImageSpec, MD.miCheckMark,
MD.maImageFreeVert, TRUE,
MD.maSelected, selected,
MD.maBackground, MD.miButtonBack,
MD.maShowSelState, FALSE,
MD.maControlChar, key,
tagEnd));
END KeyCheckmark;
(*\\\*)
(*
**
** Buttons
**
*)
(*/// "Buttons" *)
(*$ IF Locale *)
PROCEDURE Simplebutton(name : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Simplebutton(name : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
RETURN TextObject( TAG(buffer,
MD.maFrame, MD.mvFrameButton,
(*$ IF Locale *)
MD.maTextContents, name,
(*$ ELSE *)
MD.maTextContents, ADR(name),
(*$ ENDIF *)
MD.maTextPreParse, ADR("\033c"),
MD.maTextSetMax, FALSE,
MD.maInputMode, MD.mvInputModeRelVerify,
MD.maBackground, MD.miButtonBack,
tagEnd));
END Simplebutton;
(*$ IF Locale *)
PROCEDURE Keybutton(name : StrPtr; key : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Keybutton(name : ARRAY OF CHAR; key : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
RETURN TextObject( TAG(buffer,
MD.maFrame, MD.mvFrameButton,
(*$ IF Locale *)
MD.maTextContents, name,
(*$ ELSE *)
MD.maTextContents, ADR(name),
(*$ ENDIF *)
MD.maTextPreParse, ADR("\033c"),
MD.maTextSetMax, FALSE,
MD.maTextHiChar, key,
MD.maControlChar, key,
MD.maInputMode, MD.mvInputModeRelVerify,
MD.maBackground, MD.miButtonBack,
tagEnd));
END Keybutton;
(*\\\*)
(*
**
** Radio Object
**
*)
(*/// "RadioObjects" *)
(*$ IF Locale *)
PROCEDURE Radio(name : StrPtr; array : APTR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Radio(name : ARRAY OF CHAR; array : APTR) : APTR;
(*$ ENDIF *)
BEGIN
RETURN RadioObject( TAG(buffer,
MD.maFrame, MD.mvFrameGroup,
(*$ IF Locale *)
MD.maFrameTitle, name,
(*$ ELSE *)
MD.maFrameTitle, ADR(name),
(*$ ENDIF *)
MD.maRadioEntries, array,
tagEnd));
END Radio;
(*$ IF Locale *)
PROCEDURE KeyRadio(name : StrPtr; array : APTR; key : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyRadio(name : ARRAY OF CHAR; array : APTR; key : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
RETURN RadioObject( TAG(buffer,
MD.maFrame, MD.mvFrameGroup,
(*$ IF Locale *)
MD.maFrameTitle, name,
(*$ ELSE *)
MD.maFrameTitle, ADR(name),
(*$ ENDIF *)
MD.maTextHiChar, key,
MD.maControlChar, key,
MD.maRadioEntries, array,
tagEnd));
END KeyRadio;
(*\\\*)
(*
**
** Cycle-Objects
**
*)
(*/// "Cycle" *)
PROCEDURE Cycle(array : APTR) : APTR;
BEGIN
RETURN CycleObject(TAG(buffer,
MD.maCycleEntries, array,
tagEnd));
END Cycle;
PROCEDURE KeyCycle(array : APTR; key : CHAR) : APTR;
BEGIN
RETURN CycleObject(TAG(buffer,
MD.maCycleEntries, array,
MD.maControlChar, key,
tagEnd));
END KeyCycle;
(*\\\*)
(*
**
** Slider-Objects
**
*)
(*/// "Slider" *)
PROCEDURE Slider(min,max,level : LONGINT; horiz : BOOLEAN) : APTR;
BEGIN
RETURN SliderObject(TAG(buffer,
MD.maGroupHoriz, horiz,
(*$ IF MUI3 *)
MD.maNumericValue, level,
MD.maNumericMax, max,
MD.maNumericMin, min,
(*$ ELSE *)
MD.maSliderLevel, level,
MD.maSliderMax, max,
MD.maSliderMin, min,
(*$ ENDIF *)
tagEnd));
END Slider;
PROCEDURE KeySlider(min,max,level : LONGINT; horiz : BOOLEAN;
key : CHAR) : APTR;
BEGIN
RETURN SliderObject(TAG(buffer,
MD.maGroupHoriz, horiz,
(*$ IF MUI3 *)
MD.maNumericValue, level,
MD.maNumericMax, max,
MD.maNumericMin, min,
(*$ ELSE *)
MD.maSliderLevel, level,
MD.maSliderMax, max,
MD.maSliderMin, min,
(*$ ENDIF *)
MD.maControlChar, key,
tagEnd));
END KeySlider;
(*\\\*)
(*$ ELSE *) (* MUIOBSOLETE *)
(*/// "alternativer Simplebutton" *)
(*$ IF Locale *)
PROCEDURE Simplebutton(name : StrPtr) : APTR;
BEGIN
RETURN ML.MakeObject(MD.moButton, TAG(buffer, name));
END Simplebutton;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Simplebutton(name : ARRAY OF CHAR) : APTR;
BEGIN
RETURN ML.MakeObject(MD.moButton, TAG(buffer, ADR(name)));
END Simplebutton;
(*$ ENDIF *) (* Locale *)
(*\\\*)
(*$ ENDIF *) (* MUIOBSOLETE *)
(*
**
** Label Objects
**
*)
(*/// "LabelX" *)
(*$ IF Locale *)
PROCEDURE Label(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Label(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, 0, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), 0, tagEnd)) ;
(*$ ENDIF *)
END Label;
(*$ IF Locale *)
PROCEDURE Label1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Label1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.singleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.singleFrame}, tagEnd)) ;
(*$ ENDIF *)
END Label1;
(*$ IF Locale *)
PROCEDURE Label2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE Label2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.doubleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.doubleFrame}, tagEnd)) ;
(*$ ENDIF *)
END Label2;
(*\\\*)
(*/// "LLabelX" *)
(*$ IF Locale *)
PROCEDURE LLabel(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE LLabel(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.leftAligned}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.leftAligned}, tagEnd)) ;
(*$ ENDIF *)
END LLabel;
(*$ IF Locale *)
PROCEDURE LLabel1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE LLabel1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.leftAligned, MD.singleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.leftAligned, MD.singleFrame}, tagEnd)) ;
(*$ ENDIF *)
END LLabel1;
(*$ IF Locale *)
PROCEDURE LLabel2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE LLabel2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.leftAligned, MD.doubleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.leftAligned, MD.doubleFrame}, tagEnd)) ;
(*$ ENDIF *)
END LLabel2;
(*\\\*)
(*/// "CLabelX" *)
(*$ IF Locale *)
PROCEDURE CLabel(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE CLabel(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.centered}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.centered}, tagEnd)) ;
(*$ ENDIF *)
END CLabel;
(*$ IF Locale *)
PROCEDURE CLabel1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE CLabel1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.centered, MD.singleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.centered, MD.singleFrame}, tagEnd)) ;
(*$ ENDIF *)
END CLabel1;
(*$ IF Locale *)
PROCEDURE CLabel2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE CLabel2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, MD.MOLabelFlagSet{MD.centered, MD.doubleFrame}, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), MD.MOLabelFlagSet{MD.centered, MD.doubleFrame}, tagEnd)) ;
(*$ ENDIF *)
END CLabel2;
(*\\\*)
(*/// "KeyLabelX" *)
(*$ IF Locale *)
PROCEDURE KeyLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, HiChar, tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), HiChar, tagEnd)) ;
(*$ ENDIF *)
END KeyLabel;
(*$ IF Locale *)
PROCEDURE KeyLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyLabel1;
(*$ IF Locale *)
PROCEDURE KeyLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyLabel2;
(*\\\*)
(*/// "KeyLLabelX" *)
(*$ IF Locale *)
PROCEDURE KeyLLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyLLabel;
(*$ IF Locale *)
PROCEDURE KeyLLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyLLabel1;
(*$ IF Locale *)
PROCEDURE KeyLLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyLLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.leftAligned, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyLLabel2;
(*\\\*)
(*/// "KeyCLabelX" *)
(*$ IF Locale *)
PROCEDURE KeyCLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyCLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyCLabel;
(*$ IF Locale *)
PROCEDURE KeyCLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyCLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyCLabel1;
(*$ IF Locale *)
PROCEDURE KeyCLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE KeyCLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.centered, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END KeyCLabel2;
(*\\\*)
(*$ IF MUI3 *)
(*/// "FreeX" *)
(*$ IF Locale *)
PROCEDURE FreeLabel(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLabel(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert}), tagEnd)) ;
(*$ ENDIF *)
END FreeLabel;
(*$ IF Locale *)
PROCEDURE FreeLabel1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLabel1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.singleFrame}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.singleFrame}), tagEnd)) ;
(*$ ENDIF *)
END FreeLabel1;
(*$ IF Locale *)
PROCEDURE FreeLabel2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLabel2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.doubleFrame}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.doubleFrame}), tagEnd)) ;
(*$ ENDIF *)
END FreeLabel2;
(*\\\*)
(*/// "FreeLLabelX" *)
(*$ IF Locale *)
PROCEDURE FreeLLabel(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLLabel(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned}), tagEnd)) ;
(*$ ENDIF *)
END FreeLLabel;
(*$ IF Locale *)
PROCEDURE FreeLLabel1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLLabel1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.singleFrame}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.singleFrame}), tagEnd)) ;
(*$ ENDIF *)
END FreeLLabel1;
(*$ IF Locale *)
PROCEDURE FreeLLabel2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeLLabel2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.doubleFrame}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.doubleFrame}), tagEnd)) ;
(*$ ENDIF *)
END FreeLLabel2;
(*\\\*)
(*/// "FreeCLabelX" *)
(*$ IF Locale *)
PROCEDURE FreeCLabel(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeCLabel(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}), tagEnd)) ;
(*$ ENDIF *)
END FreeCLabel;
(*$ IF Locale *)
PROCEDURE FreeCLabel1(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeCLabel1(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(MD.moLabelSingleFrame), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(MD.moLabelSingleFrame), tagEnd)) ;
(*$ ENDIF *)
END FreeCLabel1;
(*$ IF Locale *)
PROCEDURE FreeCLabel2(label : StrPtr) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeCLabel2(label : ARRAY OF CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered, MD.doubleFrame}), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered, MD.doubleFrame}), tagEnd)) ;
(*$ ENDIF *)
END FreeCLabel2;
(*\\\*)
(*/// "FreeKeyX" *)
(*$ IF Locale *)
PROCEDURE FreeKeyLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLabel;
(*$ IF Locale *)
PROCEDURE FreeKeyLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLabel1;
(*$ IF Locale *)
PROCEDURE FreeKeyLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLabel2;
(*\\\*)
(*/// "FreeKeyLLabelX" *)
(*$ IF Locale *)
PROCEDURE FreeKeyLLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLLabel;
(*$ IF Locale *)
PROCEDURE FreeKeyLLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.singleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLLabel1;
(*$ IF Locale *)
PROCEDURE FreeKeyLLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyLLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.leftAligned, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyLLabel2;
(*\\\*)
(*/// "FreeKeyCLabelX" *)
(*$ IF Locale *)
PROCEDURE FreeKeyCLabel(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyCLabel(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyCLabel;
(*$ IF Locale *)
PROCEDURE FreeKeyCLabel1(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyCLabel1(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(MD.moLabelSingleFrame) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered}) + LONGCARD(MD.moLabelSingleFrame) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyCLabel1;
(*$ IF Locale *)
PROCEDURE FreeKeyCLabel2(label : StrPtr; HiChar : CHAR) : APTR;
(*$ ELSE *)(*$ CopyDyn := FALSE *)
PROCEDURE FreeKeyCLabel2(label : ARRAY OF CHAR; HiChar : CHAR) : APTR;
(*$ ENDIF *)
BEGIN
(*$ IF Locale *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, label, CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ELSE *)
RETURN ML.MakeObject(MD.moLabel, TAG(buffer, ADR(label), CAST(LONGCARD, MD.MOLabelFlagSet{MD.freeVert, MD.centered, MD.doubleFrame}) + LONGCARD(HiChar), tagEnd)) ;
(*$ ENDIF *)
END FreeKeyCLabel2;
(*\\\*)
(*$ ENDIF *)
(*
**
** Controlling Objects
**
** Note : get didn't work in previous releases
**
*)
(*/// "set, get,...." *)
PROCEDURE get(obj : APTR; attr : LONGCARD; store : ADDRESS);
BEGIN DoMethod(obj,TAG(buffer, omGET, attr, store));
END get;
PROCEDURE set(obj : APTR; attr : LONGCARD; value : LONGINT);
VAR dummy : APTR;
BEGIN dummy:=SetAttrsA(obj, TAG(buffer,attr,value,tagEnd));
END set;
PROCEDURE setmutex(obj : APTR; n : LONGINT);
BEGIN set(obj,MD.maRadioActive,n);
END setmutex;
PROCEDURE setcycle(obj : APTR; n : LONGINT);
BEGIN set(obj,MD.maCycleActive,n);
END setcycle;
(*$ IF Locale *)
PROCEDURE setstring(obj : APTR; s : StrPtr);
BEGIN set(obj,MD.maStringContents,s);
END setstring;
(*$ ELSE *) (*$ CopyDyn := FALSE *)
PROCEDURE setstring(obj : APTR; s : ARRAY OF CHAR);
BEGIN set(obj,MD.maStringContents,ADR(s));
END setstring;
(*$ ENDIF *)
PROCEDURE setcheckmark(obj : APTR; b : BOOLEAN);
BEGIN
IF b THEN set(obj,MD.maSelected,1);
ELSE set(obj,MD.maSelected,0);
END;
END setcheckmark;
PROCEDURE setslider(obj : APTR; l : LONGINT);
BEGIN
(*$ IF MUI3 *)
set(obj,MD.maNumericValue,l);
(*$ ELSE *)
set(obj,MD.maSliderLevel,l);
(*$ ENDIF *)
END setslider;
(*\\\*)
(*/// "NoteClose" *)
(*
** NoteClose (app,obj,ID)
*)
PROCEDURE NoteClose(app : APTR; obj : APTR; ID : LONGINT);
BEGIN DoMethod(obj,TAG(buffer, MD.mmNotify,MD.maWindowCloseRequest,TRUE, app,2,MD.mmApplicationReturnID,ID));
END NoteClose;
(*\\\*)
(*/// "NoteButton" *)
(*
** Notebutton (app,obj,ID)
*)
PROCEDURE NoteButton(app : APTR; obj : APTR; ID : LONGINT);
BEGIN DoMethod(obj,TAG(buffer, MD.mmNotify,MD.maPressed, FALSE, app,2,MD.mmApplicationReturnID,ID));
END NoteButton;
(*\\\*)
(*/// "RemMember" *)
(*
** RemMember (obj,member)
*)
PROCEDURE RemMember(obj : APTR; member : APTR);
BEGIN DoMethod(obj,TAG(buffer, omREMMEMBER, member));
END RemMember;
(*\\\*)
(*/// "AddMember" *)
(*
** AddMember (obj,member)
*)
PROCEDURE AddMember(obj : APTR; member : APTR);
BEGIN DoMethod(obj,TAG(buffer, omADDMEMBER, member));
END AddMember;
(*\\\*)
END MuiMacros.